#ifndef __YHM_PM_H__
#define __YHM_PM_H__

#include "types.h"

static inline void *bfn2addr(long bfn, void *start){
  return (void *)((char *)start + bfn * BLOCK_SIZE);
}

void create_pm(char *fname, long size, struct local_pm *pm);
void destory_pm(struct local_pm *pm);
struct pm_super *init_pm(struct local_pm *pm);
struct pm_allocator *init_pm_allocator(struct local_pm *pm);

#endif